<?php
include_once "../funciones/class_carrito_orden.php";
include_once "filtro_cabecera.php";
include_once "../funciones/funciones_php.php";


function validaTipoEnvioCobranza($cobranza , $id_destino ,$id_tarifa_cliente, $tipoEnvio){
    
    $conexion = conectar();
     //si hay sobres valida si se pueden enviar
    if($cobranza> 0){
      
        $sql = sprintf("SELECT id_tarifa_cliente_rango_destino
              FROM tarifa_cliente_rango_destino
              WHERE id_tarifa_cliente = '%s'
              AND id_destino = '%s'
              AND id_tipo_encomienda = 5
              AND id_tipo_envio = '%s'",
              pg_escape_string($id_tarifa_cliente),
              pg_escape_string($id_destino),
              pg_escape_string($tipoEnvio));
        $consulta = pg_query($sql)or die("Error en la consulta");
        $numFilas = pg_num_rows($consulta);
        
        if($numFilas <= 0)
        {
          return false;
        }
    }
    pg_close();
    return true;
}

function getTarifa($id_cliente, $idComuna){
  
    $conexion = conectar();
    $sql = sprintf("SELECT cliente.id_tarifa_cliente,destino.id_destino, comuna.id_ruta
            FROM cliente, destino, comuna
            WHERE cliente.id_cliente = '%s'
            AND comuna.id_comuna = '%s'
            AND destino.id_destino = comuna.id_destino",
            pg_escape_string($id_cliente),pg_escape_string($idComuna));
    $consulta = pg_query($sql) or die("Error al obtener la tarifa");
    $numFilas = pg_num_rows($consulta);
    
    //Si existe tarifa asignada al cliente, se le iguala a una varialbe
    if($numFilas > 0){
      
        $id_tarifa_cliente = pg_fetch_array($consulta);
        return $id_tarifa_cliente;
    
    }
    else{ //si no existe una tarida asignada al cliente detiene el proceso
      die("No existe tarifa asignada para este cliente");
    }
    pg_close();
}

//Recibe variables del formulario y las ingresa al carrito
if( isset($_POST['Ingresar'], $_SESSION['carrito_orden_cobranza'], $_SESSION['ruta_cobranza']) ) {    
    
    $id_cliente = $_POST['id_remitente'];
    $idDepartamento = $_POST['id_departamento'];
    //valida rut
    valida_rut($_POST['rut_consignatario']) ? $rut = trim($_POST['rut_consignatario']) : die ("Rut invalido");
    //Limpia variables de formulario
    $nombre = strtoupper(limpiaString(trim($_POST['nombre_consignatario'])));
    $apellido = strtoupper(limpiaString(trim($_POST['apellido_consignatario'])));
    $telefono = strtoupper(limpiaString(trim($_POST['telefono_consignatario'])));
    $direccion = strtoupper(limpiaString(trim($_POST['direccion_consignatario'])));
    $numDireccion = strtoupper(trim($_POST['numero_direccion_consignatario']));
    $depto = strtoupper(limpiaString(trim($_POST['depto_consignatario'])));
    validaInt($_POST['id_comuna_consignatario']) ? $idComuna = strtoupper(trim($_POST['id_comuna_consignatario'])) : die("id comuna debe ser numeros");
    $comuna = strtoupper(limpiaString(trim($_POST['comuna_consignatario'])));
    $contacto = strtoupper(limpiaString(trim($_POST['contacto_consignatario'])));
   
    
    //Si correo no esta vacio lo valida, de lo contrario no lo valida
    if(!empty($_POST['correo_consignatario'])){
      validaEmail($_POST['correo_consignatario']) ? $correo = trim($_POST['correo_consignatario']) : die("Debe ingresar un correo valido"); 
    }
    
    if(empty($idDepartamento)) die("Debe Selecionar departamento de cliente");
       
    $instruccionesEsp = limpiaString(trim($_POST['instruccionesEsp']));
    
    //Obtiene el destino segun la comuna seleccionada y el id_tarifa asiganado al cliente
    $id_tarifa_cliente = getTarifa($id_cliente, $idComuna);
    $ruta = $id_tarifa_cliente['id_ruta'];
   
    //Ingresa la orden al carrito
    $_SESSION['carrito_orden_cobranza']->ingresa_orden($id_cliente,$nombre,$apellido,$rut,$telefono,$direccion,$numDireccion,$depto,$comuna,$idComuna,$contacto,$correo,2,0,0,0,0,$instruccionesEsp);
    array_push($_SESSION['ruta_cobranza'],$ruta);

    echo "Orden ingresada correctamente";
}
else{
  
  die( "Error");

}

//echo "<div id='mensaje'></div>";
//mostrar_carrito_cobranza($_SESSION['carrito_orden_cobranza'],$_SESSION['ruta']);
?>